#include"SmartPointer.h"

/////////////////
//include
/////////////////

/////////////////
//prottype
/////////////////

/////////////////
//const
/////////////////


SmartPointer::SmartPointer()
{
	reference = 0;
}
SmartPointer::SmartPointer(SmartPointer& smart_pointer)
{
	smart_pointer.AddRef();
	(*this) = smart_pointer;
}
SmartPointer::~SmartPointer()
{
}
void SmartPointer::AddRef()
{
	reference++;
}

SmartPointer& SmartPointer::operator =( SmartPointer& smart_pointer)
{
	smart_pointer.AddRef();

	this->reference = smart_pointer.reference;
	return *this;
}